home *** CD-ROM | disk | FTP | other *** search
- page 55,132
- TITLE SETGRAPH subroutines called by Microsoft Pascal for SETCOPY
-
- SETGRAPH SEGMENT PARA PUBLIC 'CODE'
- ASSUME CS:SETGRAPH
-
-
- PUBLIC GOTOXY
- PUBLIC SCROLL_SCREEN_UP
-
- ;---------------------------------------------------------------
- ;
- ; GOTOXY - Set cursor on screen at passed location
- ;
- ; GOTOXY( row : Integer - row and column where
- ; col : Integer ) - cursor is to be moved
- ;
- ; Returned :nothing
- ;
- ;---------------------------------------------------------------
- ; Procedure gotoxy(CONST ROW,COL : Integer);
- ;---------------------------------------------------------------
-
- GOTOXY PROC FAR
-
- ROWPAR EQU 8 ;row parameter location
- COLPAR EQU 6 ;Col parameter location
- PUSH BP ;save caller's BP register
- MOV BP,SP ;point BP to parameters passed
- push ax
- push bx
- push dx
- mov ah,0FH
- int 10h ;get active page
- MOV DX,[BP+ROWPAR] ;move row to DX
- MOV DH,DL ;move DL to DH
- MOV AX,[BP+COLPAR] ;move column to CX
- MOV DL,AL ;move CL to DL
- MOV AH,02 ;Move cursor functor
- INT 10H
- pop dx
- pop bx
- pop ax
- MOV SP,BP
- POP BP ;return to caller
- RET 4
-
- GOTOXY ENDP
-
- ;-----------------------------------------------------------------------
- ; Procedure scroll_screen_up( nlines,ulr,ulc,lrr,lrc,ATTR: Integer);
- ;-----------------------------------------------------------------------
-
- SCROLL_SCREEN_UP PROC FAR
-
- PUSH BP
- MOV BP,SP
-
- PUSH AX
- PUSH BX
- PUSH CX
- PUSH DX
- MOV AX,[BP+10H]
- MOV DX,[BP+08H]
- MOV BX,[BP+0AH]
- MOV DH,BL
- MOV CX,[BP+0CH]
- MOV BX,[BP+0EH]
- MOV CH,BL
- MOV BX,[BP+6H]
- MOV BH,BL
- MOV BL,0
- MOV AH,6
- INT 10H
- MOV AH,0
- POP DX
- POP CX
- POP BX
- POP AX
-
- POP BP
- RET 0CH
-
-
- ;[BP+10H] nlines
- ;[BP+08H] llc
- ;[BP+0AH] llr
- ;[BP+0CH] ulc
- ;[BP+0EH] ulr
- ;[BP+6H] attr
-
-
- SCROLL_SCREEN_UP ENDP
-
- SETGRAPH ENDS
- END
-